package params

type InnerIdParam struct {
	InnerId int `json:"id,omitempty"`
}

type ApiDelParam struct {
	InnerId  int   `json:"id,omitempty"`
	InnerIds []int `json:"ids,omitempty"`
}

type BaseDelParam struct {
	InnerId int `json:"id,omitempty"`
}
type BaseBatchDelParam struct {
	InnerIds []int `json:"ids,omitempty"`
}

type PagingParams struct {
	PageNum  int    `json:"currentPage,omitempty"`
	PageSize int    `json:"pageSize,omitempty"`
	Order    string `json:"order,omitempty"`
}
type DateQueryParams struct {
	DateFrom string `json:"datefrom,omitempty"`
	DateTo   string `json:"dateto,omitempty"`
}
type HeaderParam struct {
	UserType string `json:"usertype,omitempty"`
	UserId   int    `json:"userid,omitempty"` //为了输出的方便，用了int形式，userid在token字符串中是字符串的形式
	UserName string `json:"username,omitempty"`
	RoleIds  []int  `json:"roleids,omitempty"`
	ManageStoreIds []int  `json:"storeids,omitempty"`
	Token    string `json:"token,omitempty"`
	EndType  string `json:"end_type,omitempty"` //目前没有用上
}

type DelRspParam struct {
	RowsAffected int    `json:"rowsaffected"`
	Msg          string `json:"msg"`
}

type ModBooleanStatusReqParam struct {
	InnerId     int  `json:"id"`
	StatusValue bool `json:"status"`
}
type ModStringStatusReqParam struct {
	InnerId     int  `json:"id"`
	StatusValue string `json:"status"`
}

type ModStringStatusRsqParam struct {
	InnerId     int  `json:"id"`
	StatusValue string `json:"status"`
}

// 查询多条数据的响应
type QueryListRspParam struct {
	PageSize int         `json:"pageSize,omitempty"`
	PageNum  int         `json:"currentPage,omitempty"`
	Total    int64       `json:"total"`
	List     interface{} `json:"list"`
}

type WhereParam struct {
	JsonField  string `json:"field,omitempty"`
	Op         string `json:"op,omitempty"`
	MatchValue string `json:"matchvalue,omitempty"`
	FieldType  string `json:"fieldtype,omitempty"`
}

type ModelFieldDef struct {
	FieldName string `json:"fieldname,omitempty"`
	JsonField string `json:"jsonfield,omitempty"`
	FieldType string `json:"fieldtype,omitempty"`
	DbField   string `json:"dbfield,omitempty"`
}

type BooleanColumnModParam struct {
	InnerId     int    `json:"id,omitempty"`
	ColumnName  string `json:"column_name"`
	ColumnValue bool   `json:"column_value"`
}

type NatsWebsocketNotifyReqParam struct {
	MsgType string      `json:"msgtype"`
	UserId  string      `json:"userid"`
	Data    interface{} `json:"data"`
}

type MqttWebsocketNotifyReqParam struct {
	MsgType string      `json:"msgtype"`
	UserId  string      `json:"userid"`
	Data    interface{} `json:"data"`
}

type ThingCodesParam struct {
	CodeType string `json:"codetype,omitempty"` // 开票日期
	ThingCode string `json:"thing_code"`
	SampleTag string `json:"sample_tag"`
}
type InventoryThingCodesParam struct {
	CodeType string `json:"codetype,omitempty"` // 开票日期
	Result   string `json:"result"`             // 在单据中用bh，不用order_no
	IsReady  int    `json:"is_ready"` //作为出库的商品就差执行 1表示ready,其他表示未Ready
}

type ThingCodesAnalyse struct {
	CodeType string `json:"codetype,omitempty"` // 开票日期
	ThingCode   string `json:"thing_code"`             // 在单据中用bh，不用order_no
	Tag      string `json:"tag"`
}

//type InventoryProductBuyerAddressParam struct {
//	BuyerAddressUuid string `json:"buyer_address_uuid"`
//	BuyerNameZh     string `json:"buyer_namezh"`
//	BuyerPhone      string `json:"buyer_phone"`
//	StreetNote      string `json:"street_note"`
//	LocalAddress    string `json:"local_address"`
//	IsReady  int    `json:"is_ready"` //作为出库的商品就差执行 1表示ready,其他表示未Ready
//}
//
//type ProductBuyerAddressAnalyse struct {
//	BuyerAddressUuid string `json:"buyer_address_uuid"`
//	BuyerNameZh     string `json:"buyer_namezh"`
//	BuyerPhone      string `json:"buyer_phone"`
//	StreetNote      string `json:"street_note"`
//	LocalAddress    string `json:"local_address"`
//	Tag      string `json:"tag"`
//}